#include <QCoreApplication>
#include <QDebug>
#include <QtSql/QSqlDatabase>
#include <QStringList>
#include <QJsonDocument>
#include <QJsonObject>

#include <dirent.h>
#include <iostream>
#include <stdlib.h>
#include <fstream>
#include <vector>

#include <stdio.h>
#include <iostream>
#include <QTime>
#include <QDate>

using namespace std;

#include "DataManager.h"
#include "DataParser.h"

int main(int argc, char *argv[])
{
    QCoreApplication a(argc, argv);
//    qDebug() << "WELCOME TO QT !!!";
//    DataManager dManager;
//    bool ok = dManager.initialize("QMYSQL", "localhost", "markrt", "root", "1", 3306);

//    qDebug() << ok;

//    dManager.setQuery("SELECT pricelists_templates FROM user WHERE id='3344'");

//    while(dManager.next()) {
//        QString var = dManager.getNext();
//        QJsonDocument sd = QJsonDocument::fromJson(var.toUtf8());
//        QVariantMap data = sd.object().toVariantMap();
//        qDebug() << data;
//    }
    DataParser dParser;
    QVariantMap res = dParser.checkPricelistTemplate("3344-fc_Sheet1.csv");

    qDebug() << res["columns"].toMap()["name"].toString();
    qDebug() << res["columns"].toMap()["article"].toString();
    qDebug() << res["columns"].toMap()["code"].toString();
    qDebug() << res["columns"].toMap()["price"].toString();
    qDebug() << res["columns"].toMap()["rrp"].toString();
    qDebug() << res["columns"].toMap()["quantity"];


//    DataManager dManager;
//    bool ok = dManager.initialize("QMYSQL", "localhost", "markrt", "root", "1", 3306);
//    if(!ok) {
//        qDebug() << "error";
//    } else {
//        dManager.setQuery("INSERT INTO user SET col1='aaa', col2='bbb'");
//        QTime start = QTime::currentTime();
//        qDebug() << "START: " << start;
//        for(int i = 0; i <= 100000; i++) {
//            dManager.execQuery();
//        }
        QTime end = QTime::currentTime();

        qDebug() << "END: " << end;
        QDate nd = QDate::currentDate();
        qDebug() << nd;
//    }

    return a.exec();
}

void fillDB(QString filename)
{

}
